// 总页数、当前第几页，每页的条数
function loadPage(totalPage,pageNum,numPerPage){
	$.jqPaginator('#pageCur', {
        totalPages: totalPage,
        visiblePages: 3,
        currentPage: pageNum,
        onPageChange: function (num, type) {
        	if(type == "change"){//  init  以及change两个值
        		loadResult(num,numPerPage);
        	}
        }
    });
}
//验证date2 - date1 相差的月份
function getMonthNumber(date1, date2) {
    //默认格式为"20030303",根据自己需要改格式和方法
    var year1 = date1.substr(0, 4);
    var year2 = date2.substr(0, 4);
    var month1 = date1.substr(4, 2);
    var month2 = date2.substr(4, 2);
    var len = (year2 - year1) * 12 + (month2 - month1);
    var day = date2.substr(6, 2) - date1.substr(6, 2);
    if (day > 0) {
        len += 1;
    } 
    else if (day < 0) 
    {
        len -= 1;
    }
    return len;
}
//验证日期的正确性
function checkDate(){
	if($("#startTime").val() != null && $("#endTime").val() != null
			&& $("#startTime").val() != "" && $("#endTime").val() != ""
			&& $("#startTime").val() > $("#endTime").val()){
		prompt.alert("选择时间错误");
		return false;
	}
	return true;
}
//分页的触发函数（页数,每页的行数）
function loadResultPerfect(page,numPerPage,urlAddr,param){
	$("#tableResult").hideLoading();
	$.ajax({
		url:urlAddr,
		type:'post',
		data:param+ "&pageNum=" + page +"&numPerPage=" + numPerPage,
		beforeSend:function(XMLHttpRequest){
			$("#tableResult").showLoading();
			flagTable = true;
        },
        error:function(XMLHttpRequest, textStatus, errorThrown){
        	prompt.alert("系统错误");
        	$("#tableResult").hideLoading();
        },
        success:function(data){
        	if(typeof data=='string'){
        		$("#tableResult").hideLoading();        		
        		prompt.alert("用户登录超时,请重新登录？",function(){
        			window.location.href = "index";  
        		});
        		return ;
        	}else{        	
	        	var to = Math.ceil(data.totalCount/numPerPage);
	        	if(to == 0){
	        		loadPage(1,1,numPerPage);
	        	}else{
	        		while(page > to){
	        			page --;
	        		}
	        		loadPage(to,page,numPerPage);
	        	}
	        	$("#selItem").val(data.numPerPage);
	        	$("#totalCount").html(data.totalCount);
	        	flagTable = false;
	        	$("#tableResult").hideLoading();
	        	$("#bodyResult").html("");
	        	loadTableResult(data);
	        	if($("#bodyResult").html() == ''){
	        		$("#bodyResult").html("<tr class=\"no_data\"><td colspan=\"14\">没有符合您要查询的数据！</td></tr>");
	        		$(".page").hide();
	        		if($("#tfoot").html() != null){
	            		$("#tfoot").hide();
	            	}
	        	}else{
	        		$(".page").show();
	        		if($("#tfoot").html() != null){
	            		$("#tfoot").show();
	            	}
	        		// 排序
	            	sortFuntion();
	        	}
        	}
        }
	});
}
(function($){
	if (typeof tablesorter == "undefined" || !tablesorter) {
		tablesorter = {};
	};
	
	/**
	 * 根据th class sort样式初始化tablesorter
	 */
	tablesorter.init = function(){
		$(function(){
			var headers ="{";
			var ths = $(".tablesorter th");
			ths.each(function(i,e){
				if (!$(e).hasClass("sort")) {
					headers += "\""+i+"\":{\"sorter\" : false}";
					if (i<ths.length-1) {
						headers += ",";
					}
				}else if ($(e).hasClass("sort currency")) {
					headers += "\""+i+"\":{\"sorter\" : \"currency\"}";
					if (i<ths.length-1) {
						headers += ",";
					}
				}
			});
			headers += "}";
			//console.log(headers);
			$.tablesorter.defaults.headers = JSON.parse(headers); 
			$(".tablesorter").tablesorter();
			
			$(".tablesorter").bind("sortStart", function() {
				$(".tablesorter").trigger("update");//更新缓存
				
			});
		});
	};
	
	/**
	 * 重新排序
	 * flag 0:按上次排序方式展示；1：重置排序
	 */
	tablesorter.reSort = function(flag){
		if (flag==0) {
			var sorton = [];
			$(".tablesorter th").each(function(i,e){
				if ($(e).hasClass("sort")) {
					if ($(e).hasClass("headerSortDown")) {
						sorton.push([i,0]);//降序
					}else if ($(e).hasClass("headerSortUp")) {
						sorton.push([i,1]);//升序
					}
				}
			});
			$(".tablesorter").trigger("sorton",[sorton]);
		}else if (flag==1) {
			$(".tablesorter th").removeClass("headerSortUp").removeClass("headerSortDown");
		}
		
	};
})(jQuery);

function doPrint(printName,hideColumn,thColumn,flagContext){
	var twidth = screen.width;
	var theight = screen.height;
	var tleft = 0;
	var ttop = 0;
	var submitUrl = "print/printController?printName="+printName+"&hideColumn="+hideColumn+"&thColumn="+thColumn+"&flagContext="+flagContext;
	submitUrl = encodeURI(encodeURI(submitUrl));
	wndprnt=window.open(submitUrl, "", "left=" + tleft + ",top=" + ttop + ",height=" + theight + ",width=" + twidth + ",directories=no," +
			 "location=no,menubar=yes,scrollbars=yes," +
			 "resizeable=yes,status=no,toolbar=no"); 
};

/**
验证框的ID，验证的格式（number，date，email等），是否允许为空（true 允许为空 false 不允许为空）,msg1 空值的判断错误信息，msg2 值判断结果错误信息
**/
function changeValue(id,type,flag,msg1,msg2){
	var val = $("#"+id+"").val();  // 验证框的值
	var s = $("#"+id+"s"); //成功显示控件
	var e = $("#"+id+"e");//失败显示控件
	var Zhu = $("#"+id+"Zhu"); // 失败显示信息控件
	Zhu.html("");
	s.hide();
	e.hide();
	Zhu.hide();
	return verifyIsEmpty(val,type,s,e,Zhu,flag,msg1,msg2);
}
// 验证不为空
function verifyEmpty(val){
	//开始验证
	if(val == null || val.length < 1){
		return true;
	}
	return false;
}
// 定位某一条标签
function locationFocus(id){
	window.scrollTo(0,$("#"+id).offset().top-100); 
	$("#"+id).focus();
}
// 验证值是否为空
function verifyIsEmpty(val,type,s,e,Zhu,flag,msg1,msg2){
	var thisType = "empty";
	if(type != thisType){
		return verifyNumber(val,type,s,e,Zhu,flag,msg1,msg2);//邮箱验证
	}
	if(!flag){//不许为空
		//开始验证
		if(verifyEmpty(val)){
			e.show();
			Zhu.show();
			if(msg1 != '' && msg1 != null){
				Zhu.append(msg1);
			}else{
				Zhu.append("该值不能为空");
			}
			return false;
		}
	}
	s.show();
	return true;
}
// 数字必填验证
function verifyNumber(val,type,s,e,Zhu,flag,msg1,msg2){
	var thisType = "number";
	if(type != thisType){
		return verifyEmail(val,type,s,e,Zhu,flag,msg1,msg2);//邮箱验证
	}
	if(!flag){//不许为空
		//开始验证
		if(verifyEmpty(val)){
			e.show();
			Zhu.show();
			if(msg1 != '' && msg1 != null){
				Zhu.append(msg1);
			}else{
				Zhu.append("该值不能为空！");
			}
			return false;
		}
	}
	//开始验证
	if(!verifyEmpty(val)){  //非空  向下走
		var reg = new RegExp("^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$");  
		if(!reg.test(val)){ 
			e.show();
			Zhu.show();
			if(msg2 != '' && msg2 != null){
				Zhu.append(msg2);
			}else{
				Zhu.append("请输入有效数字!");
			}
	        return false;
	    }
	}
	s.show();
	return true;
}
function verifyEmail(val,type,s,e,Zhu,flag){
	var thisType = "email";
	if(type != thisType){
		//verifyEmail(val,type,s,e,Zhu);//邮箱验证
		e.show();
		Zhu.show();
		Zhu.append("判断的类型不匹配");
		return false;
	}
	if(!flag){//不许为空
		//开始验证
		if(verifyEmpty(val)){
			e.show();
			Zhu.show();
			if(msg1 != '' && msg1 != null){
				Zhu.append(msg1);
			}else{
				Zhu.append("该邮箱不能为空！");
			}
			return false;
		}
	}
	//开始验证
	if(!verifyEmpty(val)){  //非空  向下走
		var reg = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/;  
		if(!reg.test(val)){ 
			e.show();
			Zhu.show();
			if(msg2 != '' && msg2 != null){
				Zhu.append(msg2);
			}else{
				Zhu.append("请输入正确的邮箱!");
			}
	        return false;
	    }
	}
	s.show();
	return true;
}

function createTip(e){
	var i = $(e).parent().find("i");
	if (i.length==0) {
		$(e).parent().append("<i/>");
		i = $(e).parent().find("i");
	}
	return i;
}

function createMsg(e){
	var p = $(e).parent().find("p");
	if (p.length==0) {
		$(e).parent().append("<p class='zhu_shi_1'/>");
		p = $(e).parent().find("p");
	}
	return p;
}

function _reg(e,reg,msg,newline,i,p){
	if (!reg.test($(e).val())) {
		
		if (newline) {
			if (p!=null) {
				if (p.css("display")=="none") {
					p.css("display","");
				}
				p.text(msg);
				i.removeAttr("class","s_tips");
			}
		}else{
			if (i!=null) {
				i.attr("class","zhu_shi_1");
				i.text(msg);
			}
		}
		
		//$(e).focus();
		return false;
	}
	if (i!=null) {
		i.attr("class","s_tips");
		i.text("");
	}
	if (p!=null) {
		p.attr("style","display:none;");
	}
	return true;
}
//为空
function reStrIfNull(val){
	if(verifyEmpty(val) || val == 'undefined'){
		return "";
	}
	return val;
}
//正则表达式验证
//e:当前调用方法的元素this;
//reg：正则表达示；
//msg:错误信息；
//newline:是否为下行显示错误信息
function regValide(e,reg,msg,newline){
	var p = null;
	var i = createTip(e);
	if (newline) {
		p = createMsg(e);
	}
	return _reg(e,reg,msg,newline,i,p);
}

/**加载数据函数（页面弹出对话框添加数据后重新加载数据）
 * @param tableResult   数据加载到的table-tbody中
 * @param urlAddr		加载数据URL
 * @param param			加载数据传入参数
 */
function loadResultPerfectNotPage(tableResult,urlAddr,param,page,numPerPage){
	$("#container").hideLoading();
	if(param != null){
		param = param+ "&pageNum=" + page +"&numPerPage=" + numPerPage;
	}else{
		param = "&page=1";
	}	
	$.ajax({
		url:urlAddr,
		type:'post',
		data:param,
		beforeSend:function(XMLHttpRequest){
			$("#container").showLoading();
        },
        error:function(XMLHttpRequest, textStatus, errorThrown){
        	prompt.alert("系统错误");
        	$("#container").hideLoading();
        },
        success:function(data){
        	if(typeof data=='string'){
        		$("#tableResult").hideLoading();        		
        		prompt.alert("用户登录超时,请重新登录？",function(){
        			window.location.href = "index";  
        		});
        		return ;
        	}else{    
	        	if(data.totalCount != null && data.totalCount != undefined){
	        		var to = Math.ceil(data.totalCount/numPerPage);
	            	if(to == 0){
	            		loadPage(1,1,numPerPage);
	            	}else{
	            		while(page > to){
	            			page --;
	            		}
	            		loadPage(to,page,numPerPage);
	            	}
	            	$("#selItem").val(data.numPerPage);
	            	$("#totalCount").html(data.totalCount);
	        	}
	        	
	        	$("#container").hideLoading();
	        	$("#"+tableResult).html("");
	        	loadTableResultNotPage(data,tableResult);
        	}
        }
	});
}
//数字格式化           要转换的字符，小数点位数，分割符
function fmoney(s, n , str){
   if(verifyEmpty(s) || s == 'undefined'){ //为空返回空
	   return "";
   }
   n = n > 0 && n <= 20 ? n : 2;
   s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
   var l = s.split(".")[0].split("").reverse(),
   r = s.split(".")[1];
   t = "";
   for(i = 0; i < l.length; i ++ ){
      t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? str : "");
   }
   return t.split("").reverse().join("") + "." + r;
}
//全选/全不选
function switchCb(){
	$(".cb").each(function(i,e){
		if ($(".cbAll").attr("checked")) {
			$(e).attr("checked",true);
		}else{
			$(e).attr("checked",false);
		}
		
	});
}
//重置选择,子checkbox调用
function reCb(thiz){
	var flag = true;
	if (!$(thiz).attr("checked") && $(".cbAll").attr("checked")) {
		$(".cbAll").attr("checked",false);
	}else {
		$(".cb").each(function(i,e){
			if (!$(e).attr("checked")) {
				flag = false;
				return false;
			}			
		});
		if (flag) {
			$(".cbAll").attr("checked",true);
		}
	}
}

/**
 * 时间比较大小
 * @param startTime   开始时间
 * @param endTime	  结束时间
 * @returns {Boolean} 开始时间大于结束时间返回False，否则true
 */
function checkEndTime(startTime,endTime){  
    var start=new Date(startTime.replace("-", "/").replace("-", "/")); 
    var end;
    if(endTime == null || endTime.length < 1){
    	var etime=sysdateTime();
    	end=new Date(etime.replace("-", "/").replace("-", "/"));  
    }else{
    	end=new Date(endTime.replace("-", "/").replace("-", "/"));  
    }
    
    if(end < start){  
        return false;  
    }  
    return true;  
}  
/**
 * 获取系统时间
 * @returns {String} 返回yyyy-mm-dd
 */
function sysdateTime(){
	var now = new Date();
    var year = now.getFullYear(); //getFullYear getYear
    var month = now.getMonth()+1;
    var date = now.getDate();
    return year+"-"+month+"-"+date
}

/**
 * 渠道密钥下载
 * @param partnerId
 */
function downloadkey(partnerId){
	var url = "partner/downloadKey?partnerId="+partnerId;
	document.location.href =url;	
}

/**
 * 验证不为空
 * @param id		验证ID
 * @param minLen	字符串最小长度
 * @param maxLen 	字符串最大长度（提示内容组成为：输入有误,由minLen-maxLen位字母或汉字组成）
 * @param type		验证类别，1：纯数字，2：纯字母，3：数字+字母，4:不包含以下字符 ^%&',;=?$\"，5(其他)：只验证不为空
 * @param focusFlag 光标事件只有在整体提交的时候才用
 * @returns true,false   true验证通过，false验证不通过
 */
function validateContentNotNull(id,minLen,maxLen,type,focusFlag){
	//纯数字正则
	var numReg = new RegExp("^[0-9]*$");  
	//纯字母
	var letterReg = new RegExp("^[A-Za-z]+$");
	//数字+字母
	var letterNumReg = new RegExp("^[A-Za-z0-9]+$");
	//验证是否含有 ^%&',;=?$\" 等字符：[^%&',;=?$\x22]+ 
	var charNotReg = new RegExp("^[\u4E00-\u9FA5A-Za-z0-9]+$");	
	var cnReg = new RegExp("^[\u4e00-\u9fa5]{2,10}$");	
	
	var val = $("#"+id).val();
	$("#"+id+"Zhu").html("");
	$("#"+id+"s").hide();
	$("#"+id+"e").hide();
	$("#"+id+"Zhu").hide();
	var content = "输入有误,由"+minLen+"-"+maxLen+"位";
	if(val == null || $.trim(val).length < minLen || $.trim(val).length > maxLen){		
		promptContext(content, id, type,focusFlag);		
		return false;
	}else{
		if(type == 1){
			if(!numReg.test(val)){
				promptContext(content, id, type,focusFlag);		
				return false;
			}
		}else if(type == 2){
			if(!letterReg.test(val)){
				promptContext(content, id, type,focusFlag);		
				return false;
			}
		}else if(type == 3){
			if(!letterNumReg.test(val)){
				promptContext(content, id, type,focusFlag);		
				return false;
			}
		}else if(type == 4){
			if(!charNotReg.test(val)){
				promptContext(content, id, type,focusFlag);		
				return false;
			}
		}else if (type == 5) {
			if (!cnReg.test(val)) {
				promptContext(content, id, type,focusFlag);		
				return false;
			}
		}
		$("#"+id+"s").show();
		return true;
	}
}	
function promptContext(content,id,type,focusFlag){
	$("#"+id+"e").show();
	$("#"+id+"Zhu").show();
	if(type == 1){
		$("#"+id+"Zhu").append(content+"数字组成！");	
	}else if(type == 2){
		$("#"+id+"Zhu").append(content+"字母组成！");	
	}else if(type == 3){
		$("#"+id+"Zhu").append(content+"字母、数字组成！");	
	}else if(type == 4){
		$("#"+id+"Zhu").append(content+"字母、数字、汉字组成！");	
	}else if(type == 5){
		$("#"+id+"Zhu").append(content+"汉字组成！");	
	}else{
		$("#"+id+"Zhu").append(type+"值不能为空");	
	}
	if(focusFlag){
		locationFocus(id);
	}
}

$(function(){
	//sysMsg();
});

function sysMsg(){
	$.post("platformManagement/bigPrizeManagement/unexchangeBigPrize",
		{},
		function(data, status){
			if(status == 'success'){
				if(data.size <= 0){
					$('#sysMsgs').bind('click', function(){
						return false;
					});
				}else{
					$('#sysMsgs i').show();
					// 显示首页右下方通知
					showNotice(data.size);
				}
			}
		}
	);
}

function showNotice(size){
	// do nothing
}

/**
 * 替换所有传入字符信息
 * @param str	传入内容
 * @param sptr	替换字符
 * @param sptr1	替换内容
 * @returns	替换后的内容
 */
function ReplaceAll(str, sptr, sptr1){
    while (str.indexOf(sptr) >= 0){
       str = str.replace(sptr, sptr1);
    }
    return str;
}

//时间戳转换普通日期格式
function add0(m){return m<10?'0'+m:m }
function dateFormatTimeLong(timestamp)
{
	if(timestamp != null && timestamp > 0) {
        //timestamp是整数，否则要parseInt转换,不会出现少个0的情况
        var time = new Date(timestamp);
        var year = time.getFullYear();
        var month = time.getMonth() + 1;
        var date = time.getDate();
        var hours = time.getHours();
        var minutes = time.getMinutes();
        var seconds = time.getSeconds();
        return year + '-' + add0(month) + '-' + add0(date) + ' ' + add0(hours) + ':' + add0(minutes) + ':' + add0(seconds);
    }else{
		return "";
	}
}

// 数字必填验证
function verify_Number(id,thisName) {
		var val = $("#"+id).val();
        //开始验证
        if (verifyEmpty(val)) {
            if (thisName != '' && thisName != null) {
                prompt.alert(thisName+"值不能为空！");
            } else {
                prompt.alert("该值不能为空！");
            }
            return false;
        }else{
            //纯数字正则
            var numReg = new RegExp("^[0-9]*$");
            if(!numReg.test(val)){
                if (thisName != '' && thisName != null) {
                    prompt.alert(thisName+"由数字组成！");
                } else {
                    prompt.alert("该值由数字组成！");
                }
                return false;
            }
            return true;
		}
}

// 数字必填验证
function verify_String(id,thisName) {
    var val = $("#"+id).val();
    //开始验证
    if (verifyEmpty(val)) {
        if (thisName != '' && thisName != null) {
            prompt.alert(thisName+"值不能为空！");
        } else {
            prompt.alert("该值不能为空！");
        }
        return false;
    }
    return true;
}